Stored program controlled switching systems have traditionally included a central computer that controlled switching functions in response to a program stored in memory. Although recent switching systems have distributed the call processing function among a number of system control units, many of the time-consuming tasks involved in call setup are still typically performed by a central control. For example, in one known time division switching system, the switching function is distributed among a plurality of switching modules. Each switching module has a plurality of ports and provides connections among the lines and trunks connected to the ports of that module. Calls involving lines or trunks connected to different modules are completed through a time-multiplexed switch that interconnects the modules. Each switching module includes a control unit that controls the switching function of that module. The system also includes a central control that controls the switching function of the time-multiplexed switch. Call handling in such systems requires the execution of a number of functions in addition to establishing connections. Although many of the real-time intensive tasks associated with calls, e.g., signal processing, are performed by the switching module control units, others, notably the determination of the identity of the terminating port of the switching system for each call, are performed by the system central control. The terminating port determination function includes such steps as call screening, determining whether a 1ine or a trunk is required, translating dialed numbers into physical system addresses and hunting for idle members of trunk groups or multi-line hunt groups. These are time consuming tasks which involve extensive database searching and data manipulation.
One of the important advantages of a modular system of this type is that its capacity can be closely matched to the requirements of specific applications. However, as the system becomes larger and the number of switching modules increases, the performance by the system central control of the per call tasks associated with the terminating port determination function, imposes an upper limit on the overall system call processing capacity.
One known arrangement where the terminating port determination function is distributed involves a plurality of PBXs interconnected by tie trunks. A given PBX is capable of completing the terminating port determination function for calls to lines or trunks connected to that PBX. However, for calls to lines or trunks connected to the other PBXs, the data required to determine the terminating port is not present in the given PBX. The given PBX does store sufficient data to determine the destination PBX and the tie trunks that are connected therebetween. One of the interconnecting trunks is seized and the original dialed number is transmitted over that trunk. The destination PBX responds to the dialed number as a standard call, i.e., in the same manner as if the number had been dialed on a line connected to that PBX, and completes a connection to the terminating port.
Although the known arrangement is advantageous in that calls can be completed to lines or trunks connected to any of the interconnected systems without involving a central control, the arrangement is inflexible since each PBX is assigned a predetermined block of one or more hundreds of directory numbers and all lines served by that PBX must be assigned numbers from the predetermined block. It is impossible, for example, for a customer to move from a first line served by a first PBX to a second line served by a second PBX without suffering the inconvenience of having to change directory numbers or incurring the expense associated with connecting the second line to the first PBX.
In view of the foregoing, a recognized problem in the art is the inflexibility that results when the terminating port determination function is distributed among a number of switching modules each having a plurality of ports, when each switching module stores the directory number translation information for only the ports of that switching module.